import axios from "axios";
import router from "@/router";
// import { useTokenStore } from "@/stores/useTokenStore";
import { ElMessage } from "element-plus";


const instance = axios.create({ baseURL: '/api' })


instance.interceptors.response.use(result => {

    if (result.data.code === 200) {
        return result.data
    }
    if (result.config.responseType === 'blob') {
        return result.data; // 返回原始数据
    }
    ElMessage.error(result.data.msg ? result.data.msg : '服务器内部异常')
    return Promise.reject(result.data)
}, err => {
    if (err.response.status === 401) {
        ElMessage.error('请先登录')
        router.push('/')
    } else {
        ElMessage.error(err.response.data.msg)
    }
    return Promise.reject(err)
})



// instance.interceptors.request.use((config) => {
//     if (useTokenStore().token) {
//         config.headers.Authorization = useTokenStore().token
//     }
//     return config
// }, (err) => {
//     Promise.reject(err)
// })

export default instance;